package com.cn.evaluate.handler;

import java.io.File;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public abstract class DefaultHandler {
	/**
	 * 构造函数
	 */
	public DefaultHandler(String xmlFilePath) {
		setXmlFilePath(xmlFilePath);
	}

	/**
	 * 依赖注入获取xml文件全路径
	 */
	public String xmlFilePath;

	/**
	 * 获取xml文件指定的Element
	 * 
	 * @param element
	 * @param xpath
	 * @return xml元素列表
	 */
	public List<?> getElement(Element element, String xpath) {

		List<?> resultList = element.selectNodes(xpath);
		return resultList;
	}

	/**
	 * 获取Root元素
	 * 
	 * @param xmlFilePath
	 * @return xml元素
	 * @throws DocumentException
	 */
	public Element getRootElement() throws DocumentException {
		File xmlFile = new File(xmlFilePath);
		SAXReader reader = new SAXReader();
		Document document = reader.read(xmlFile);
		Element root = document.getRootElement();
		return root;
	}

	/**
	 * 依赖注入获取xml文件全路径
	 */
	public String getXmlFilePath() {
		return xmlFilePath;
	}

	/**
	 * 依赖注入获取xml文件全路径
	 */
	public void setXmlFilePath(String xmlFilePath) {
		this.xmlFilePath = xmlFilePath;
	}
}
